#ifndef __FE__
#define __FE__

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>

extern int Edge_end[6][2];

void FENodal(double *ae, double *be, double *ce, double *de,
	     double *Vole, double *v0, double *v1, double *v2, double *v3);

void FEEdge(double *bas_val, 
	    double *curl_bas_val,    // curl is also constant
	    double *qp, int n_pts,   // logical node in master element
	    double *jacobian,
	    double *v0, double *v1, double *v2, double *v3);

void quad_rule_tet(double **qp, double **qw, int *n_pts, int order);

void local_to_global(double *qp_global, double *qp_local, int n_pts, 
		     double *v0, double *v1, double *v2, double *v3);

#endif
